1. Field of the Invention
The present invention relates generally to a coding apparatus and method, and in particular, to a linear coding apparatus and method.
2. Description of the Related Art
Generally, coding methods are used in various fields such as communication system and various storage media. By coding the original data using such coding theories, it is possible to safely transmit or store data.
In the coding methods, when a set of codewords, composed of several codewords, is used, linear codes obtained by adding linearity to the set of codewords are most popularly used.
In the coding theory, for all codewords in a code set, when a sum of two arbitrary codewords becomes again a codeword of the code set, the code set is called a ‘linear code’. That is, a code set is assumed as C, and for two arbitrary codewords Ci and Cj, Ci+Cj becomes again a codeword that belongs to a codeword set C. Such a property is called ‘linearity’, and a code set having the linearity is called a ‘linear code’. The linear code is popularly used in various fields for its realization simplicity and its design simplicity for theoretical structures.
The typical exemplary linear codes in the coding theory will be described. Error correcting codes include block codes, convolutional codes, and turbo codes. The error correcting codes are used in many communication systems and various fields, including a multimedia system such as hard disk, CD disk, and DVD disk. As a sequence generator, modified sequence generators other than a Walsh code generator and an m-sequence generator are used in several systems, including the communication system. The term ‘sequence generator’ as used herein means a code generator that generates a codeword by selecting some sequences from a set of multiple sequences.
These various code generators are popularly used in various fields. Though it is important to design code sets having superior performance due to performance change based on code generation in using the code generators, it is also important to simply generate codewords in generating a code which is an element of a code set. For most codes, code sets with linearity guaranteed are used in order to maximize simplicity of theoretical analysis and minimize complexity of code generators in terms of performance. The block code, convolutional code, turbo code, Walsh code, and m-sequence, which are the above-stated typical linear coding methods, guarantee low generation complexity and high performance.
The above linear coding methods need optimization for generation complexity according to their application fields, and there is a need for various optimized linear code generation methods according thereto.
In some cases, systems using the linear coding methods should process linear codes using different coding schemes. In this case, the systems may suffer an increase in complexity of linear encoders in order to accept all of the linear coding methods.